The present invention relates to a multicast communication method including control of the receive order of multicast packets in, e.g., a computerized conference system, and a multicast communication apparatus using the method.
In a computerized conference system and so on which share the window of a plurality of terminals, e.g., personal computers, an application which matches the operation result of each terminal in all the terminals which share the window is used. In this case, when a given terminal in a group which shares the window receives a multicast packet transmitted from another terminal in that group, all the terminals in the group are required to maintain an identical receive order of multicast packets, and pass packets to the application.
As a communication system which meets such requirement, the following system is known. That is, in this system, a given terminal in a multicast communication group has an order control section for controlling the receive order of multicast packets to maintain an identical receive order of multicast packets. As the order control method of multicast packets, the following methods are available.
1) A terminal having a multicast packet inquires the receive order in the group of the order control section. The order control section transmits the receive order of multicast packets to the terminal having a multicast packet in response to the inquiry. The terminal having a multicast packet transmits the receive order received from the order control section together with the multicast packet. Upon receiving the multicast packet and receive order, the respective terminals rearrange multicast packets in accordance with the received receive order, and pass them to the application.
2) A terminal having a multicast packet transmits the packet to be multicasted to a terminal having the order control section. Upon receiving the packet to be multicasted, the order control section multicasts that packet to other terminals in the group together with the receive order. When the terminal including a multicast packet has the order control section, it transmits the receive order together with the multicast packet.
3) A terminal which has a multicast packet transmits the multicast packet to all terminals including a terminal having an order control section. The order control section assigns the receive order of packet to the received multicast packet, and informs other terminals of that receive order. Upon receiving the multicast packet, the respective terminals rearrange multicast packets in accordance with the informed receive order. When the terminal including a multicast packet has the order control section, it sends the receive order together with the multicast packet.
In any of methods 1 to 3, when the terminal which performs order control of multicast packets matches a terminal for multicasting a packet, no communication is required via a network to determine the receive order of multicast packets. However, when the terminal which performs the order control differs from the terminal having a multicast packet, control data for controlling the receive order of multicast packets must be exchanged between the terminal with the order control section and other terminals via the network.
For this reason, when many multicast packets are transmitted from terminals other than the terminal which performs the order control, many data must be exchanged via the network to achieve the order control. If the transfer rate of the communication network is not high enough, much time is required to transmit multicast packets.
On such communication system, which terminal transmits a greater number of multicast packets largely depends on the application which uses the communication system and the purposes intended by the user who uses the application. Hence, it is difficult to specify a terminal which transmits a greater number of multicast packets in advance.
As described above, conventionally, when many multicast packets are transmitted from terminals other than the terminal for performing the order control, many data must be exchanged via the network to achieve the order control. If the transfer rate of the communication network is not high enough, much time is required to transmit multicast packets.
Also, the number of multicast packets transmitted from each terminal on the communication system largely depends on the application which uses the communication system and the purposes intended by the user who uses the application. Hence, it is difficult to specify a terminal which transmits a greater number of multicast packets in advance.